Generating Test Inputs for Fault-Tree Analyzers using Imperative Predicates

نویسندگان

  • Saša Misailović
  • Aleksandar Milićević
  • Sarfraz Khurshid
  • Darko Marinov
چکیده

This paper presents a case study on how Korat can be used in system testing, specifically in testing a large fault-tree analyzer developed for NASA. A fault-tree analyzer takes as input a fault tree that models how combinations of failures in the components of a system produce overall failures of the system. Testing a fault-tree analyzer requires generating fault trees. Korat is a previously developed testing tool that automates generation of structurally complex test inputs. Fault trees are structural in that they can be represented as graphs, and the nodes in the graphs need to satisfy certain complex constraints. Korat allows the user to express these constraints in widely used imperative programming languages such as Java. Previous research has shown how to test a fault-tree analyzer using another testing tool that requires the user to express constraints in a declarative language. This paper compares these two approaches. The results show that Korat generates a larger number of inputs but does not prune out non-equivalent inputs and thus can generate inputs that reveal errors in the system under test.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Automatic testing of software with structurally complex inputs

Modern software pervasively uses structurally complex data such as linked data structures. The standard approach to generating test suites for such software, manual generation of the inputs in the suite, is tedious and error-prone. This dissertation proposes a new approach for specifying properties of structurally complex test inputs; presents a technique that automates generation of such input...

متن کامل

Generating Structurally Complex Tests from Declarative Constraints

This dissertation describes a method for systematic constraint-based test generation for programs that take as inputs structurally complex data, presents an automated SAT-based framework for testing such programs, and provides evidence on the feasibility of using this approach to generate high quality test suites and find bugs in non-trivial programs. The framework tests a program systematicall...

متن کامل

Fault Classes and Error Detection Capability of Speciication Based Testing

Some varieties of speciication based testing rely upon methods for generating test cases from predicates in a software speciication 1] 2] 3] 4] 5] 6] 7]. These methods derive various test conditions from logic expressions, with the aim of detecting diierent types of faults. Some authors have presented empirical results on the ability of speciication based test generation methods to detect failu...

متن کامل

A Strategy for Using Genetic Algorithms to Automate Branch and Fault-Based Testing

Genetic algorithms have been used successfully to generate software test data automatically; all branches were covered with substantially fewer generated tests than simple random testing. We generated test sets which executed all branches in a variety of programs including a quadratic equation solver, remainder, linear and binary search procedures, and a triangle classifier comprising a system ...

متن کامل

Synthesizing Piece-Wise Functions by Learning Classifiers

We present a novel general technique that classifier learning to synthesize piece-wise functions (functions that split the domain into regions, applying simpler functions to each region), working in combination with a synthesizer of the simpler functions for concrete inputs and a synthesizer of predicates that can be used to define regions. We develop a theory of single-point refutable specific...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007